#ifndef _WX_DATECTRL_H_
#define _WX_DATECTRL_H_

#include "wx/defs.h"
#include "wx/control.h"         // the base class
#include "wx/datetime.h"

#define wxDatePickerCtrlNameStr wxT("datectrl")

enum {
  wxDP_DEFAULT = 0,
  wxDP_SPIN = 1,
  wxDP_DROPDOWN = 2,
  wxDP_SHOWCENTURY = 4,
  wxDP_ALLOWNONE = 8
};

class wxDatePickerCtrlBase : public wxControl {
  public:
    virtual void SetValue( const wxDateTime& dt ) = 0;
    virtual wxDateTime GetValue() const = 0;
    virtual void SetRange( const wxDateTime& dt1, const wxDateTime& dt2 ) = 0;
    virtual bool GetRange( wxDateTime *dt1, wxDateTime *dt2 ) const = 0;
};

#include "wx/generic/datectrl.h"

class wxDatePickerCtrl : public wxDatePickerCtrlGeneric {
  public:
    wxDatePickerCtrl() { }
    wxDatePickerCtrl( wxWindow *parent,wxWindowID id,const wxDateTime& date = wxDefaultDateTime,
                      const wxPoint& pos = wxDefaultPosition,const wxSize& size = wxDefaultSize,
                      long style = wxDP_DEFAULT | wxDP_SHOWCENTURY,const wxValidator& validator = wxDefaultValidator,
                      const wxString& name = wxDatePickerCtrlNameStr )
      : wxDatePickerCtrlGeneric( parent, id, date, pos, size, style, validator, name ) {
    }
  private:
    DECLARE_DYNAMIC_CLASS_NO_COPY( wxDatePickerCtrl )
};

#endif
